Systems and methods for providing varying resistance throughout an excercise movement

ABSTRACT

A system for providing resistance in an exercise machine. The system includes a motor, at least one drive screw attached to the motor. A carriage is coupled to the drive screw. The carriage moves in a first direction when the drive screw is turned in a first direction and a second direction when the drive screw is turned in a second direction. At least one sensor is attached to the carriage, wherein the at least one sensor is configured to detect external force on the carriage. Information from the sensor indicates external force on the carriage. The information is used to determine a movement of the carriage in response to the external force. The motor is instructed to turn the drive screw to apply the movement.

CROSS-REFERENCE TO RELATED APPLICATION

This patent application claims priority to and the benefit of pending provisional patent application 62/780,794 filed Dec. 17, 2018, which is incorporated herein by reference in its entirety.

TECHNICAL FIELD

This disclosure relates generally to exercise equipment and more particularly to systems and methods for providing resistance in exercise equipment.

BACKGROUND

Resistance training is a core element to strength and conditioning programs. Resistance training involves a person performing a movement, while one or more muscles are under a load. The load is generally referred to as resistance. There are a multitude of different exercises that can be performed under resistance. Regardless of the exercise, however, performing resistance training requires some way of providing a load as a person is performing a movement.

In basic resistance training, such as weight training, a trainee uses a weight to provide a load. Two of the most common weight lifting methods are the use of free weights or weight machines. Free weights are generally barbells and dumbbells that a person raises or lowers while performing a movement. Weight machines, on the other hand, generally include one or more weight stacks that a user raises or lowers through a supplementary mechanism (e.g. cables, pulleys, levers, gears, cams, etc.). Some weight machines use free weights to provide a load.

One problem associated with existing resistance equipment is that the resistive loads do not vary over time. When a user performs a movement with free weights, the weight remains the same during the beginning, middle, and end of the movement. However, due to biomechanics, a user may be able to handle more weight at various stages of the movement. For instance, it is understood that a user can usually handle more weight during the negative part of a movement than in the positive part of a movement. Similarly, there are exercises, such as the squat, in which a trainee can lift more weight at the top of the movement than at the bottom of the movement. However, there is no way to add weight to a barbell or dumbbell during a movement, other than to stop the movement and manually add plates. This is not efficient and not even practical for certain types of movements.

SUMMARY

In one embodiment, a system is provided. System includes a motor, at least one drive screw attached to the motor. The drive screw has an axis of rotation and is configured such that the motor can turn the drive screw in a first direction and a second direction around the axis of rotation. A carriage is coupled to the drive screw. The carriage moves axially in a first direction relative to the drive screw when the drive screw is turned in a first direction and a second direction relative to the drive screw when the drive screw is turned in a second direction. At least one sensor is attached to the carriage, wherein the at least one sensor is configured to detect external force on the carriage. A processor and a memory coupled with the processor are included in the system. The memory comprises executable instructions that when executed by the processor cause the processor to effectuate operations. The operations include receiving information from the sensor indicative of the external force on the carriage. Utilizing the information to determine a movement of the carriage in response to the external force and instructing the motor to turn the drive screw to apply the movement.

In one embodiment, an exercise apparatus is provided. A housing includes a sidewall defining a space and including a first end and a second end. A motor is disposed within the housing at the first end. At least one drive screw is disposed within the housing. The drive screw is rotatably attached at a first end to the motor and at a second end to the housing. A carriage is attached to the drive screw. Rotation of the drive screw in a first direction causes the carriage to move toward the first end of the housing and rotation of the drive screw in a second direction cause the carriage to move toward the second end of the housing. A mechanical actuator is attached to the carriage. The mechanical actuator is configured to allow a user to perform an exercise movement. A controller is configured to detect movement of the carriage through the mechanical actuator and to respond to the movement by instructing the motor to rotate the drive screw to move the carriage in response to the movement.

In one embodiment, a method for applying force in an exercise apparatus is provided. The exercise apparatus includes a motor, a drive screw connected to the motor, a carriage connected to the drive screw, and a sensor that detects force applied to the carriage. An operational mode is received through a user interface. A direction and a magnitude of a first force that has been applied to the carriage is detected. The magnitude and direction are used to determine a responsive force to apply to the carriage, wherein the responsive force is corresponds to the operational mode of the exercise apparatus. The motor is instructed to turn the drive screw to apply the responsive force to the carriage.

BRIEF DESCRIPTION OF THE DRAWINGS

In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of the variations in implementing the disclosed technology. However, the instant disclosure may take many different forms and should not be construed as limited to the examples set forth herein. Where practical, like numbers refer to like elements throughout.

FIG. 1A and FIG. 1B are functional block representations of exemplary systems for providing varying resistance in exercise equipment.

FIGS. 2A-2C are perspective views of an exemplary resistance machine that may utilize the system of FIG. 1A and FIG. 1B.

FIG. 3A and FIG. 3B are a perspective view and side view respectively of an exemplary resistance machine that may be used with the system of FIG. 1A.

FIG. 3C and FIG. 3D are close up views of a carriage that may be used in the resistance machine of FIG. 5A and FIG. 5B.

FIG. 4 is perspective view of an exemplary curl machine that may that may utilize the system of FIG. 1A.

FIG. 5 is an exemplary block diagram depicting a computing device that may be used as a controller in the system of FIG. 1A and FIG. 1B.

FIG. 6 is a flowchart depicting illustrative operation of the system of FIG. 1A and FIG. 1 B.

DETAILED DESCRIPTION

FIG. 1A is a representative system 10 for providing varying resistance in exercise equipment. In one embodiment, system 10 comprises carriage 12, having an inner structure 14 and an outer structure 16, a drive screw 18, a motor 20, a controller 22, and one or more sensors 24.

In one example, inner structure 14 and outer structure 16 may each comprise a plate, frame, and/or another type of body that are moveable with respect to each other. For instance, inner structure 14 and outer structure 16 may be moveably attached to each other such that they move laterally with respect to each along the axis A of drive screw 18. More detailed exemplary embodiments of inner structure 14 and outer structure 16 will be further provided herein. However, for the purposes of FIG. 1, it is sufficient to recognize that they move laterally with respect to each other along the direction of axis A. It should also understood that inner structure 14 and outer structure 16 may also move in other directions with respect to each other without departing from the scope of the disclosure.

Referring further to FIG. 1A, inner structure 14 includes threaded openings 15 through, which it is rotatably engaged with drive screw 18. Rotatable engagement with drive screw 18 causes inner structure 14 to move along axis A when drive screw 18 is rotated. In addition, it should be understood that when drive screw 18 is not rotated, inner structure 14 is substantially fixed in place along axis A. The direction that inner structure 14 moves is determined by the direction of rotation of drive screw 18.

Referring further to FIG. 1A, outer structure 16 in one example is not connected to drive screw 18. In one example, outer structure 16 is positioned in a different plane than drive screw 18. Therefore, outer structure 16 floats substantially above or below the plane of drive screw 18 depending on the orientation from which one views carriage. Because, drive screw 18 is not connected to outer structure 16 and outer structure 16 is on a different plane than drive screw 18, movement of drive screw 18 does not directly impart movement to outer structure 16. Nevertheless, in one example, at least one connecting device 28 connects inner structure 14 to outer device. Such a connecting device 28 could take many including, but not limited to, flexible and expandable materials, such as springs, rubber, foam, and combinations thereof. Such materials may be used in connection with other materials, such as bolts, brackets, shims, rails, tracks, etc. to connect inner structure 14 and outer structure 16 together in a moveable manner. The connection of inner structure 14 and outer structure 16 allows drive screw 18 to impart movement to outer structure 16 by rotating and thereby by moving inner structure 14 to impart a force on outer structure 16 through connecting devices 28. It should be noted that a single connecting device 28 is shown in FIG. 1 for illustrative purpose, but multiple connecting devices 28 may be used. For instance, a connecting device may reside at each corner of inner structure 14.

Referring further to FIG. 1A, because outer structure 16 is not connected to drive screw 18 and is outside the plane of drive screw 18, outer structure does not require drive screw 18 to move. Accordingly, outer structure 16 may be actuated by another device or actor. For instance, a mechanical actuator, such as a bar, a pulley system, a handle, a cable, and or a lever, etc. may be attached to outer structure 16 and allow a user to actuate movement of outer structure 16 relative to inner structure 14, which is held in place by drive screw 18. This allows a user to provide force, such as in a weightlifting movement, indirectly against inner structure 14.

Referring further to FIG. 1A, drive screw 18 extends along and beyond a length L of carriage 12. In one embodiment, drive screw has first end 26 and a second end 27. First end 26 is mechanically coupled to motor 20. Second end 28 may be rotatably seated within a housing of a machine (not shown). Motor 20 turns drive screw 18 around axis A. The rotation of drive screw 18 around axis A combined with the engagement of drive screw with the threaded openings 15 causes inner structure 14 to move relative along axis A. Accordingly, motor 20 may be used to provide force on carriage along the direction of axis A by turning drive screw 18. Such force may be varied by the direction of rotation of the drive screw 18 and varied in magnitude by the torque at which motor 20 operates.

Referring further to FIG. 1A, controller 22 and sensors 24 in one example are utilized to measure the force exerted between inner structure 14 and outer structure 16. In one example, a first sensor 30 may be a slide potentiometer that measures the displacement of inner structure 14 and outer structure 16. A second sensor 32 may be an angle potentiometer. An angle potentiometer may be used to measure an angle of an external structure relative to outer structure 16. For instance, a lever may be attached to outer structure 16 and an angle potentiometer may be used to measure the angle of the lever relative to outer structure 16, as will be discussed in more detail herein. It should be noted that two sensors 24 are depicted for illustrative purposes, but more sensors 24 may be used and in different configurations. Sensors 24 measure the direction and magnitude of force exerted by inner structure 14 on outer structure 16 and provide such measurements to controller 22, which operates motor 20 in accordance with one or more algorithms and/or routines with which controller 22 is programmed.

Referring further to FIG. 1A, in one example, controller 22 may be programmed to instruct motor 20 to drive screw 18 in a first direction when a certain force is imparted by outer structure 16 on inner structure. For instance, a user may perform a movement in which the user provides force against outer structure 16, which causes outer structure 16 to move relative to inner structure 14. Sensors 24 will report such force to controller 20 and controller 20 may be programmed to either allow such force at a certain magnitude (in the case of a positive portion of an exercise movement) or to resist such movement and drive carriage 12 in the opposite direction and at a certain magnitude (in the case of negative movement). In another example, system 10 may be in an operating mode in which controller 22 allow carriage 12 to move freely. For example, such a mode may be to allow user to move carriage 12 to a desired position. In such a mode, the slightest force exerted on inner structure 14 by outer structure may cause controller 22 to rotate motor 20 so that carriage move rapidly to the desired position. In another example, a user may want to perform an isometric exercise. An operating mode may be programmed such that controller 22 does not move carriage 12 regardless of the force exerted by outer structure 16 against inner structure 14.

Because motor 20 and controller 22 can selectively rotate drive screw 18 to move carriage 12 along axis A. System 10 may be utilized in exercise equipment to provide variable resistance while users perform certain movements. The programming of controller 22 may be customized according to the objectives of the individual users, manufacturers, and/or personal trainers. An exemplary device that may be utilized as controller 22 is discussed in connection with FIG. 5. It should be noted that controller 22 may include an input/output device that would allow a user to program system 10 and/or select an operating mode for system 10. Therefore, while exercising a user could select an exercise program, increase resistance, and decrease resistance as needed. A user's selections would be effectuated by controller 22 tailoring the direction of movement and torque of motor 20 to provide the resistance desired by the user. Furthermore, such resistance can be varied over time by varying the torque and/or direction of the motor 20.

Referring to FIG. 1B, another embodiment of system 10′ is shown for exemplary purposes. FIG. 1B depicts an embodiment in which there are two drive screws 18 rather than the one drive screw 18 shown in FIG. 1A. The use of two drive screws 18 may be advantageous in certain exercise applications. For example, the system 10 of FIG. 1A may be utilized in a resistance machine, such as squat, press, or leg extension machine in which one drive screw 18 may be sufficient to accomplish its purpose.

In addition, the configurations shown in FIGS. 1A and 1B are also illustrative. It is envisioned that systems 10, 10′ may include multiple carriages 12, motors 20, and controllers 22 without departing from the scope of the disclosure. An example of using system 10 with multiple motors 20 and/or controllers would be a multifunction exercise apparatus. Such an apparatus may be configured to have a squat, a press, and leg extension at the same time. One carriage 12, drive screw 18, motor 20, and controller 22 could govern all functions or multiple carriages 12, drive screws 18, motors 20, and controllers 22 could be used, such that each function would have dedicated hardware. Another example, would be to configure system 10 with multiple drive screws 18 which would each be driven by a dedicated motor 20. As an example, such a configuration may be worthwhile to provide higher levels of resistance since two motors 20 could perform more work than one motor 20. Such a use case may be effective for users who require a greater degree of resistance, such as bodybuilders or power lifters.

Referring to FIG. 2A, an embodiment of a resistance machine 200 incorporating system 10 is shown for illustrative purposes. Resistance machine 200 in one example includes a housing 201 comprising a base 203, a tower 205, a support member 207, and a lever 209. Base 203 provides a support on which a user can stand when using the machine. Base 203 also functions to provide support to machine 200 such that it remains upright. Tower 205 acts as the housing within which system 10 resides. Support member 207 supports machine 200 in an upright position and includes pivot point 208 at which lever 209 is attached.

Referring further to FIG. 2A, housing 201 has a top end 211 and a bottom end 213. A top surface is positioned at top end 211. A sidewall 215 runs between top end 211 and bottom end 213. Sidewall 215 in one example may be closed and comprise a continuous material defining an opening 216 within which system 10 resides. In another example, sidewall 215 may be open and comprise one or more members or rails oriented to extend longitudinally between top end 211 and bottom end 213.

Within opening 216, one or more rods 217 extend longitudinally from top end 211 to bottom end 213 of housing 201. If plural rods 217 are used, then they would extend longitudinally in a parallel arrangement. Positioned on the rods 217 are one or more carriages 12. Carriages 12 are positioned similar to the carriage shown in FIG. 1A. Carriages 12 include inner structure 14 and outer structure 16 that slide with respect to each other along rods 217. Inner structure 14 and outer structure are separated by springs 221 (or alternative elastic and compressible elements). Inner structure 14 includes a threaded opening 15 through which drive screw 18 extends. Drive screw 18 in one example is rotatably seated on top end 211 of housing and extends longitudinally toward bottom end 213 of housing at which it is connected to motor 20. Outer structure 16 includes one or more pegs 223 to which lever 209 may be attached. Referring also to FIGS. 2B and 2C, lever 209 is adjustable between a top position (FIG. 2B) and bottom position (FIG. 2C) in addition to middle position (FIG. 2A). Lever 209 is adjusted by controller 22 instructing motor 20 to move lever 209 by moving carriage 12 through rotation of drive screw 18. In this way, the lever 209 may be moved to different positions corresponding to different starting points of an exercise. For example, FIG. 2A may be a starting point for a squat or press. FIG. 2B may be a starting point for an overhead pull down. FIG. 2C may be a starting point for a bent over row.

Referring further to FIG. 2A, lever 209 in one example includes an interface 225 to which one or more attachments may be connected to allow a user to perform various exercises. In the example shown, a padded squat attachment 227 is shown, which would allow users to orient themselves to perform a squat. Other attachments include put not limited to handles, a bar, a rope, or a band, which would allow a user to perform push and pull exercises such as presses and pulldowns.

One or more sensors 24 may be present to measure the displacement between inner carriage 14 and outer carriage 16 in the manner described in FIGS. 1A and 1B. Sensors 24 may include a linear potentiometer 30 to measure displacement between inner carriage 14 and outer carriage 16. An angle potentiometer 32 may be positioned at pivot point 208 to measure the angular position of lever 209 relative to support member 207. The angular position of lever 209 will affect the force applied to/from carriage from/to a user. Accordingly, angular position of lever 209 is used by controller in its calculation of how much force to apply through rotation of drive screws 18.

Referring further to FIG. 2A, in one example, a user operates machine 200 by actuating lever 209 to push or pull it toward top end 211 or bottom end 213. As this movement occurs, outer structure 16 is displaced relative to inner structure 14. Sensors 24 detect the extent of the displacement and send signals to controller 22. Controller 22 responds to displacement in accordance with the operational mode that it is in and directs motor 20 accordingly. Motor 20 may do nothing (in an isometric mode) or it will turn drive screw in one direction to allow the movement (in a positive direction of a movement) at a certain force corresponding to a user's desired weight or turn drive in a second direction (in a negative direction of movement). Controller 22 may also specify the force or torque at which motor 20 should turn drive screw 18. As drive screw 18 turns, inner structure 14 will apply force against outer structure 16 and the carriage 12 will move as described in FIGS. 1A-1B.

Referring to FIG. 3A-3B, another embodiment of an exercise machine 300 utilizing system 10 is shown for illustrative purpose. Machine 300 includes similar structure to the machine 200 shown in FIGS. 2A-2C. There is housing 301 comprising a base 303, a tower 305, and a support member 307. The housing 301 has a top end 311 and a bottom end 313. A sidewall 315 runs between top end 311 and bottom end 313. Sidewall 315 in one example may be closed and comprise a continuous sheet of material defining an opening 316 within which system 10 resides. In another example, sidewall 315 may be open and comprise one or more members or rails oriented to extend longitudinally between top surface top end 311 and bottom end 313.

Within opening 316, one or more rods 317 extend longitudinally from top surface 314 and base 303. If plural rods 317 are used, then they would extend longitudinally in a parallel arrangement. Positioned on the rods 317 are one or more carriages 12. Carriages 12 include inner structure 14 and outer structure 16 that are slide with respect to each other along rods 319. Inner structure 14 and outer structure 16 are separated by springs 321 (or alternative elastic and compressible elements). Inner structure 14 includes a threaded opening through which drive screw 18 extends. Drive screw 18 in one example is rotatably seated on one side of surface 214 and extends longitudinally toward base 303 where it is connected to motor 20.

Unlike exercise machine 200, machine 300 does not include a lever 209 to allow user to operate it. Machine 300 is configured as leg extension and leg curl apparatus. Machine 300 includes a bench 320 that is configurable between an upright leg extension position and a reclining leg curl position. An “L” shaped arm 322 is rotatable attached to bench 320 at pivot point 324.

Referring to FIG. 3B, a cable 326 having a first end 328 and a second end 330 is attached to arm 322 at the first end and attached to outer structure 16 of carriage 12 at second end 330. A pulley system directs cable from arm 322 longitudinally toward top end 311 of housing 301.

Referring to FIG. 3C, in one example, cable 326 is attached to outer structure through the use of a magnetic holding mechanism 332. Holding mechanism 332 comprises a magnet 334 having an opening through which it is positioned on one of the rods 317. A metallic member 336 is attached to the second end 330 of cable 326. The metallic member has an opening through which it is positioned on rod 317. When machine 300 is in use metallic member 336 may be separate from magnet 334 such that it bears against outer carriage 16 (FIG. 3C). When a user operated machine 300 by moving arm 322 in the positive movement of a leg curl or leg extension, the pulley system causes cable 326 to move such that metallic member 336 exerts force toward the bottom end 313 of housing 301. This causes metallic member to bear against outer structure 16. Outer structure 16 flexes against inner structure 14. A sensor 24 detects this movement and notifies controller 22 which instructs motor to turn drive screw 18 in accordance with a program to move carriage 12 to apply a certain amount of resistance. In the negative portion of the movement, metallic member 336 will exert diminishing force against inner structure 14. Sensor 24 will detect the diminishing force, notify controller 22, which will instruct motor to turn drive screw 18 in the opposite direction and at a certain level of resistance.

When a user no longer wants to user leg curl and leg extension, metallic member 336 may be moved toward magnet 334, which will hold it out of the way such that it such that it is no longer in engaged with carriage 12 (FIG. 3D). Carriage 12 could then be attached to another attachment to perform another exercise. For instance, carriage 12 could be provided with a handle or bar such that a user could perform a press or pulling exercise. In another example, carriage 12 could be provided with a lever as in FIGS. 2A-2C. Machine 300 could then operate as universal weight lifting apparatus including a pulley system and a lever system.

Referring to FIG. 4, another embodiment of an exercise machine 400 incorporating system 10 is shown for illustrative purposes. Machine 400 is similar to machine 300. However, instead of functioning as a leg extension/leg curl machine, machine 400 is configured as a preacher curl machine. Machine 400 includes a housing 401 having a first end 403 and a second end 405. A carriage 12, drive screw 18, motor 20, and controller 22 are positioned within the space defined by the housing 401. An arm 407 is rotatably connected to housing 401 at a pivot point 409. A platform 411 is provided for users to position their upper arms. A cable 413 includes a first end 415 connected to arm 407 and a second end 417 connected to outer structure 16 of carriage 12. A pulley 419 redirects cable from arm 407 such that it moves carriage 12 longitudinally along the line extending from first end 403 to second 405. When a user performs a positive movement by rotating his hands toward his body, the second end 417 of the cable 13 will pull against outer portion 16 of carriage 14 and cause it to flex toward the bottom end 405 of housing 401. This causes outer structure 16 to flex against inner structure 14. A sensor 24 detects this movement and notifies controller 22 which instructs motor to turn drive screw 18 in accordance with a program to move carriage 12 to apply a certain amount of resistance. In the negative portion of the movement, outer structure 16 will exert diminishing force against inner structure 14. Sensor 24 will detect the diminishing force, notify controller 22, which will instruct motor to turn drive screw 18 in the opposite direction.

Referring to FIG. 5, it should be noted that controller 22 may be implemented on a computing device, an example of which is illustrated in FIG. 5 as a functional block diagram. Computing device 500 may comprise a processor 502 and a memory 504 coupled to processor 502. Memory 504 may contain executable instructions that, when executed by processor 502, cause processor 502 to effectuate operations associated with translating parallel protocols between end points in families as described above. As evident from the description herein, network device 500 is not to be construed as software per se.

In addition to processor 502 and memory 504, computing device 500 may include an input/output system 506. Processor 502, memory 504, and input/output system 506 may be coupled together to allow communications between them. Each portion of computing device 500 may comprise circuitry for performing functions associated with each respective portion. Thus, each portion may comprise hardware, or a combination of hardware and software. Accordingly, each portion of computing device 500 is not to be construed as software per se. Input/output system 506 may be capable of receiving or providing information from or to a communications device or other network entities configured for telecommunications. For example input/output system 506 may include a wireless communications (e.g., 3G/4G/GPS) card. Input/output system 506 may be capable of receiving or sending video information, audio information, control information, image information, data, or any combination thereof. Input/output system 506 may be capable of transferring information with network device 500. In various configurations, input/output system 706 may receive or provide information via any appropriate means, such as, for example, optical means (e.g., infrared), electromagnetic means (e.g., RF, Wi-Fi, Bluetooth®, ZigBee®), acoustic means (e.g., speaker, microphone, ultrasonic receiver, ultrasonic transmitter), electrical means, or a combination thereof. Bluetooth, infrared, NFC, and Zigbee are generally considered short range (e.g., few centimeters to 20 meters). WiFi is considered medium range (e.g., approximately 100 meters).

Input/output system 506 may contain a communication connection 508 that allows computing device 500 to communicate with other devices, network entities, or the like. Communication connection 508 may comprise communication media. Communication media typically embody computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, or wireless media such as acoustic, RF, infrared, or other wireless media. The term computer-readable media as used herein includes both storage media and communication media. Input/output system 506 also may include an input device 510 such as keyboard, mouse, pen, voice input device, or touch input device. Input/output system 506 may also include an output device 512, such as a display, speakers, or a printer. It should be understood that the various user interfaces described in connection with FIGS. 1A-4 may be implemented as an integrated part of input/output system 506. User interfaces may also be implemented as standalone devices 500 that are interfaced with computing device 500 through input/output system 506.

Processor 502 may be capable of performing functions associated with to control system 10. For example, processor may operate system 10 to provide varying resistance in the machines described in FIGS. 2-4. Processor 502 may be programmed to provide resistance in accordance with a program defined by a user. A user may comprise a user of exercise equipment, a manufacturer of exercise equipment, or a third party, such as a coach or trainer.

Memory 504 of computing device 500 may comprise a storage medium having a concrete, tangible, physical structure. As is known, a signal does not have a concrete, tangible, physical structure. Memory 504, as well as any computer-readable storage medium described herein, is not to be construed as a signal. Memory 504, as well as any computer-readable storage medium described herein, is not to be construed as a transient signal. Memory 504, as well as any computer-readable storage medium described herein, is not to be construed as a propagating signal. Memory 504, as well as any computer-readable storage medium described herein, is to be construed as an article of manufacture.

Memory 504 may store any information utilized in conjunction with operating the system 10 and the exercise equipment shown in FIGS. 2-5 as well as variations thereof. Depending upon the exact configuration or type of processor 502, memory 504 may include a volatile storage 514 (such as some types of RAM), a nonvolatile storage 516 (such as ROM, flash memory), or a combination thereof. Memory 504 may include additional storage (e.g., a removable storage 518 or a non-removable storage 520) including, for example, tape, flash memory, smart cards, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, USB-compatible memory, or any other medium that can be used to store information and that can be accessed by computing device 500. Memory 504 may comprise executable instructions that, when executed by processor 502, cause processor 502 to provide varying resistance in an exercise machine.

While examples of systems and methods for providing varying resistance have been described in connection with various machines, computing devices/processors, the underlying concepts may be applied to various equipment that have not been described, but which are within the scope of this disclosure. The various resistance programs described herein may be implemented in controller 22 with hardware or software or, where appropriate, with a combination of both. Thus, controller 22 may take the form of program code (i.e., instructions) embodied in concrete, tangible, storage media having a concrete, tangible, physical structure. Examples of tangible storage media include floppy diskettes, CD-ROMs, DVDs, hard drives, or any other tangible machine-readable storage medium (computer-readable storage medium). Thus, a computer-readable storage medium is not a signal. A computer-readable storage medium is not a transient signal. Further, a computer-readable storage medium is not a propagating signal. A computer-readable storage medium as described herein is an article of manufacture. When the program code is loaded into and executed by a machine, such as a computer, the machine becomes a device for providing varying resistance. In the case of program code execution on programmable computers, the computing device will generally include a processor, a storage medium readable by the processor (including volatile or nonvolatile memory or storage elements), at least one input device, and at least one output device. The program(s) can be implemented in assembly or machine language, if desired. The language can be a compiled or interpreted language, and may be combined with hardware implementations.

The methods and devices associated controller 22 may be practiced via communications embodied in the form of program code that is transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via any other form of transmission, wherein, when the program code is received and loaded into and executed by a machine, such as an EPROM, a gate array, a programmable logic device (PLD), a client computer, or the like, the machine becomes an device for implementing telecommunications as described herein. When implemented on a general-purpose processor, the program code combines with the processor to provide a unique device that operates to invoke the functionality of controller 22.

Referring to FIG. 6, an exemplary method 600 for operating system 10 is now described for illustrative purposes. In step 601, user input is received. User input in one example may be provided through input output system 506 described in connection with FIG. 5. User input may include a number of characteristics of user. For example, user input may include the height and weight of a user. User input may include data indicative of a user's strength. For instance, if a user is capable of performing a 500 pound squat or a 200 pound press. User input may include one or more exercise modes that that the user would like to perform. For instance, a user may specific that the user would like to operate an exercise machine at a particular varying resistance. One example would be that the user would like to perform a selected movement at a certain resistance during the positive portion of the movement and a resistance equal to 120% of that resistance during the negative portion of the movement. Another example would be that the user would like to perform the a movement at certain resistance at the beginning of a positive portion of a movement and would like the resistance to increase as the user is performing the positive portion of the movement. In another example, the user may indicate that the user would like resistance to vary during the range of a negative portion of a movement. In another example, a user may specify that the user intends to perform a number of repetitions and the user would like resistance to vary from repetition to repetition. In one example, user input may be provided at the time the user begins to use system 100. In another example user input may be preprogrammed into system 10 and stored. In such an example, the user may have a profile that the user could access and select such preprogrammed input for use in a workout.

Referring further to FIGS. 1A-1B and FIG. 6, in one example, controller determines whether or not a user's input corresponds to an operational mode. An operational mode may comprise a predetermined mode of operation. The operational mode may be to instruct motor 20 to turn drive screws such that carriage 12 would move freely in whatever direction the user moves it. In another example, the operation mode may be a predetermined resistance program in which case the controller 22 would instruct motor to operate in accordance with the resistance program. In another example, the operational mode may be to provide straight resistance. For example, the user could request 100 lbs. of resistance in which case the controller 22 would instruct motor 20 to rotate in a direction and at an amount of torque equal to 100 lbs. of resistance. In another example, the operational mode may be an isometric mode in which user would specify that it does not want carriage to move. Accordingly, controller 22 would operate motor 20 so that it remained fixed.

Referring further FIG. 1 and FIG. 6, in step 605, if it is determined that the user has selected an operation mode, then in step 607, the system 10 runs the operational mode. If in step 605, it is determined that the user has not selected an operational mode, then in step 609, system 10 may suggest an operational mode or enter into a default operational mode. System may provide output to user through input output system 506 describe in connection with FIG. 5. 

1. A system for providing variable resistance in an exercise machine, comprising: a motor; at least one drive screw attached to the motor, wherein the drive screw has an axis of rotation and is configured such that the motor can turn the drive screw in a first direction and a second direction around the axis of rotation; a carriage, coupled to the drive screw, wherein the carriage moves axially in a first direction relative to the drive screw when the drive screw is turned in a first direction and a second direction relative to the drive screw when the drive screw is turned in a second direction; at least one sensor attached to the carriage, wherein the at least one sensor is configured to detect external force on the carriage; and a processor and a memory coupled with the processor, the memory comprising executable instructions that when executed by the processor cause the processor to effectuate operations comprising: receiving information from the sensor indicative of the external force on the carriage; and utilizing the information to determine a movement of the carriage in response to the external force; and instructing the motor to turn the drive screw to apply the movement.
 2. The system of claim 1, wherein the carriage comprises: an outer structure; and an inner structure moveably coupled to the outer structure; wherein the inner structure includes a threaded opening through which the drive screw is rotatably coupled to the carriage.
 3. The system of claim 1, wherein the outer structure is connected to the inner structure by at least one connector that allows the outer structure to move relative to the inner structure in a direction along the axis of rotation.
 4. The system of claim 3, wherein the sensor is a slide potentiometer that is attached to the inner structure and the outer structure; wherein the slide potentiometer measures displacement between the inner structure and the outer structure along the axis of rotation.
 5. The system of claim 1, wherein the carriage includes an interface that allows the system to be attached to an actuator of an exercise machine, wherein the actuator is employed by a user to perform a resistance exercise.
 6. The system of claim 5, wherein the actuator is a lever arm of a resistance machine.
 7. The system of claim 5, wherein the actuator is part of a pulley system of a resistance machine.
 8. The system of claim 1, further comprising a user interface coupled to the processor that allows a user of an exercise machine to identify resistance that the user would like the controller to apply over a range of an exercise movement.
 9. The system of claim 8, wherein utilizing the information comprises determining a rotation of the motor such that it moves the carriage in a manner corresponding to the resistance that the user would like the controller to apply over the range of the exercise movement.
 10. The system of claim 9, wherein the motor moves the carriage such that the resistance varies over the range of the exercise movement.
 11. The system of claim 1, wherein the operations comprise instructing the motor to turn the drive screw in the first direction during a negative phase of an exercise movement and to turn the drive screw in a second direction during a positive phase of an exercise movement.
 12. The method of claim 1, the sensor includes an angle potentiometer.
 13. An exercise apparatus, comprising: a housing comprising a sidewall defining a space and including a first end and a second end; a motor disposed within the housing at the first end; at least one drive screw disposed within the housing, wherein the drive screw is rotatably attached at a first end to the motor and at a second end to the housing; a carriage attached to the drive screw, wherein rotation of the drive screw in a first direction causes the carriage to move toward the first end of the housing and rotation of the drive screw in a second direction cause the carriage to move toward the second end of the housing; a mechanical actuator attached to the carriage, wherein the mechanical actuator is configured to allow a user to perform an exercise movement; and a controller configured to detect movement of the carriage through the mechanical actuator and to respond to the movement by instructing the motor to rotate the drive screw to move the carriage in response to the movement.
 14. The exercise apparatus of claim 13, wherein the controller instructs the motor to turn the drive screw in the second direction such that the carriage moves in the second direction if it detects movement of the carriage in the second direction.
 15. The exercise apparatus of claim 14, wherein the controller instructs the motor to turn the drive screw in the second direction at a varying torque.
 16. A method for applying force in an exercise apparatus including a motor, a drive screw connected to the motor, a carriage connected to the drive screw, and a sensor that detects force applied to the carriage, the method comprising: receiving through a user interface an operational mode for the exercise apparatus; detecting a direction and a magnitude of a first force has been applied to the carriage; using the magnitude and direction to determine a responsive force to apply to the carriage, wherein the responsive force is corresponds to the operational mode of the exercise apparatus; instructing the motor to the turn the drive screw to apply the responsive force to the carriage.
 17. The method of claim 16, wherein the operational mode is to allow movement of the carriage in the detected direction but at rate that corresponds to a desired resistance.
 18. The method of claim 17, wherein instructing comprises instructing the motor to turn the drive screw such that the carriage moves in the detected direction.
 19. The method of claim 18, wherein instructing comprises instructing the motor to turn the drive screw at a torque corresponding to the resistance.
 20. The method of claim 19, further comprising: detecting a direction and magnitude of a second force applied to the carriage; and instructing the motor to turn the drive screw such that the carriage moves in the detected direction of the second force. 